package com.aiiter.house.service;

import java.util.List;
import com.aiiter.house.domain.HouseTenantInformation;
import com.aiiter.house.domain.vo.HouseTenantInformationVo;

/**
 * 存储租户的基本信息及与房间的关联Service接口
 * 
 * @author yaocheng
 * @date 2024-08-13
 */
public interface IHouseTenantInformationService 
{
    /**
     * 查询存储租户的基本信息及与房间的关联
     * 
     * @param tenantId 存储租户的基本信息及与房间的关联主键
     * @return 存储租户的基本信息及与房间的关联
     */
    public HouseTenantInformation selectHouseTenantInformationByTenantId(Long tenantId);

    /**
     * 查询存储租户的基本信息及与房间的关联列表
     * 
     * @param houseTenantInformation 存储租户的基本信息及与房间的关联
     * @return 存储租户的基本信息及与房间的关联集合
     */
    public List<HouseTenantInformation> selectHouseTenantInformationList(HouseTenantInformation houseTenantInformation);
    public List<HouseTenantInformationVo> selectHouseExpiredTenantInformationList();


   public List<Object>selectHouseTenantInformationTree();


    public List<Object>selectHouseTenantInformationTreeText();
    /**
     * 新增存储租户的基本信息及与房间的关联
     * 
     * @param houseTenantInformation 存储租户的基本信息及与房间的关联
     * @return 结果
     */
    public int insertHouseTenantInformation(HouseTenantInformation houseTenantInformation);

    /**
     * 修改存储租户的基本信息及与房间的关联
     * 
     * @param houseTenantInformation 存储租户的基本信息及与房间的关联
     * @return 结果
     */
    public int updateHouseTenantInformation(HouseTenantInformation houseTenantInformation);

    /**
     * 批量删除存储租户的基本信息及与房间的关联
     * 
     * @param tenantIds 需要删除的存储租户的基本信息及与房间的关联主键集合
     * @return 结果
     */
    public int deleteHouseTenantInformationByTenantIds(Long[] tenantIds);

    /**
     * 删除存储租户的基本信息及与房间的关联信息
     * 
     * @param tenantId 存储租户的基本信息及与房间的关联主键
     * @return 结果
     */
    public int deleteHouseTenantInformationByTenantId(Long tenantId);
}
